<template>
	<view class="container" :style="{ paddingBottom: winInfo.safeAreaInsets.bottom + 'px' }">
		<view v-if="tab == 0">
			<view class="logo-box">
				<image src="/static/images/common/logo.png" class="logo-img"></image>
				<!-- <view style="font-size: 48rpx">栖木社</view> -->
			</view>
			<!-- 登录按钮 -->
			<view class="btn-container">
				<view class="btn-box" @tap="resigster">新用户注册</view>
				<view class="btn-box" @tap="tab = 1">登录</view>
			</view>
		</view>
		<view v-if="tab == 1 || tab == 2">
			<view class="logo-box">
				<image src="/static/images/common/logo.png" class="logo-img" style="margin-top: 12rpx; margin-bottom: 16rpx"></image>
				<!-- <view class="login-BT">栖木社</view> -->
				<view class="logo-title" v-if="tab == 2">
					<view>注册账号</view>
					<view>即可开始使用</view>
				</view>
				<view class="logo-title" v-if="tab == 1">
					<view>登录账号</view>
					<view>即可开始使用</view>
				</view>
				<view v-if="loginType == 1" class="input-container">
					<view class="input-box">
						<view class="input-title">
							<image class="title-img" src="/static/images/common/phone1.png"></image>
							<view>+86</view>
						</view>
						<input type="number" v-model="Phone" maxlength="11" placeholder="请输入手机号" placeholder-class="input-holder" />
					</view>
					<view class="input-box captcha-box">
						<input type="text" v-model="captchaCode" maxlength="4" placeholder="请输入图形验证码" placeholder-class="input-holder" />
						<image :src="captchaImage" class="captcha-image" @tap="GetCaptcha"></image>
					</view>
					<view class="input-box" style="justify-content: space-between">
						<input type="number" v-model="code" maxlength="11" placeholder="请输入验证码" placeholder-class="input-holder" />
						<view class="get_SMCode" @tap="sendSmsCode" v-if="DaoJS == 0">获得验证码</view>
						<view class="get_SMCode" v-else>{{ DaoJS }}后重试</view>
					</view>
				</view>
				<view v-else class="input-container">
					<view class="input-box">
						<image src="/static/images/common/phone1.png"></image>
						<input type="number" v-model="Phone" maxlength="11" placeholder="请输入手机号" placeholder-class="input-holder" />
					</view>
					<view class="input-box">
						<image src="/static/images/common/password.png"></image>
						<input type="text" password="true" v-model="password" maxlength="11" placeholder="请输入密码" placeholder-class="input-holder" />
					</view>
				</view>
			</view>

			<view class="login-btns" v-if="tab == 2">注册</view>
			<view class="login-btns" v-if="tab == 1" @tap="login">登录</view>
			<view class="login-tips" v-if="tab == 1 && loginType == 1" @tap="loginType = 0">使用账号密码登录</view>
			<view class="login-tips" v-if="tab == 1 && loginType == 0" @tap="loginType = 1">使用短信验证登录</view>
			<view class="foget-word" v-if="loginType == 0" @tap="resetPW">忘记密码</view>
		</view>
		<!-- 登录方式 -->
		<view class="login-function">
			<view class="login-title">
				<view class="line"></view>
				<view>登录方式</view>
				<view class="line"></view>
			</view>
			<view class="login-btn-container">
				<view v-if="winInfo.hostName !== 'WeChat'" @tap="wechatLogin">
					<view class="login-btn">
						<image src="/static/images/common/wechat.png"></image>
						<view>微信登录</view>
					</view>
				</view>
				<button v-else open-type="getPhoneNumber" @getphonenumber="getPhoneNumber" class="button" hover-class="none">
					<view class="login-btn">
						<image src="/static/images/common/wechat.png"></image>
						<view>微信登录</view>
					</view>
				</button>

				<view class="login-btn" v-if="tab == 0 || loginType == 0" @tap="toPhoneLogin">
					<image src="/static/images/common/phone.png"></image>
					<view>手机号登录</view>
				</view>
			</view>
		</view>
		<!-- 隐私权限 -->
		<view class="yinsi-box">
			<radio-group @change="radioChange" name="xy">
				<radio color="#FB353B" :value="xieyi" :checked="xieyi">已阅读及同意</radio>
			</radio-group>
			<view class="xieyi-info">《栖木社》</view>
			<view class="xieyi-info">《登录政策》</view>
			<view class="xieyi-info">《隐私政策》</view>
		</view>
	</view>
</template>
<script>
import { TUILogin } from '@tencentcloud/tui-core';
export default {
	data() {
		return {
			xieyi: 1,
			CurrentUser: this.Microi.GetCurrentUser(),
			tab: 0, // 0:登录、注册选择 1:手机号登录 2:注册
			Phone: '',
			winInfo: {
				safeAreaInsets:{
					bottom:34
				}
			},
			code: '',
			password: '',
			loginType: 0, // 1:手机号短信登录 0:账号密码
			DaoJS: 0,
			isDisabled: false,
			captchaCode: '', // 图形验证码
			captchaImage: '', // 图形验证码图片
			captchaId: '' // 图形验证码ID
		};
	},
	mounted() {
		let obj = {};
		// #ifdef MP-WEIXIN
		obj = wx.getMenuButtonBoundingClientRect();
		// #endif
		// #ifdef MP-BAIDU
		obj = swan.getMenuButtonBoundingClientRect();
		// #endif
		// #ifdef MP-ALIPAY
		my.hideAddToDesktopMenu();
		// #endif

		setTimeout(() => {
			uni.getSystemInfo({
				success: (res) => {
					this.winInfo = res;
					console.log(res, 'res');
					this.winInfo.width = obj.left || res.windowWidth;
					this.winInfo.height = obj.top ? obj.top + obj.height + 8 : res.statusBarHeight + 44;
					this.winInfo.top = obj.top ? obj.top + (obj.height - 32) / 2 : res.statusBarHeight + 6;
					this.winInfo.scrollH = res.windowWidth;
				}
			});
		}, 0);
	},
	onLoad() {
		this.GetCaptcha();
	},
	methods: {
		GetCaptcha() {
			var self = this;
			uni.request({
				url: self.Microi.ApiBase + '/api/Captcha/getCaptcha',
				method: 'GET',
				responseType: 'arraybuffer',
				data: {
					OsClient: self.Microi.OsClient
				},
				success: (result) => {
					console.log('result', result);
					if (result && result.header && result.header.captchaid) {
						self.captchaId = result.header.captchaid; //一定要将返回的captchaid存储起来
					}
					var src = 'data:image/png;base64,' + uni.arrayBufferToBase64(result.data);
					self.captchaImage = src;
				},
				fail: (data, code) => {}
			});
		},

		async sendSmsCode() {
			var self = this;
			if (self.IsDisabled) {
				self.Microi.Tips('请勿重复点击', false);
				return;
			}
			self.IsDisabled = true;
			if (self.DaoJS) {
				self.Microi.Tips('请等待倒计时结束', false);
				self.IsDisabled = false;
				return;
			}
			if (!self.Phone || self.Phone.length != 11 || !/^1[3-9]\d{9}$/.test(self.Phone)) {
				self.Microi.Tips('请检查手机号', false);
				self.IsDisabled = false;
				return;
			}
			if (!self.captchaCode) {
				self.Microi.Tips('请输入图形验证码', false);
				self.IsDisabled = false;
				return;
			}

			var res = await self.Microi.ApiEngine.Run('send_sms_reg', {
				Phone: self.Phone,
				_CaptchaValue: self.captchaCode,
				OsClient: self.Microi.OsClient,
				_CaptchaId: self.captchaId
			});
			console.log(res, 'res');
			if (res.Code == 0) {
				self.Microi.Tips(res.Msg || '发送失败', false);
				self.IsDisabled = false;
				// self.GetCaptcha(); // 刷新图形验证码
				return;
			} else {
				self.DaoJS = 60;
				// 显示倒计时
				const interval = setInterval(() => {
					if (self.DaoJS > 0) {
						self.DaoJS--; // 每秒减少1
					} else {
						clearInterval(interval); // 倒计时结束，清除 interval
					}
				}, 1000); // 每1000毫秒（1秒）执行一次
			}
			self.IsDisabled = false;
		},
		resigster() {
			uni.navigateTo({
				url: '/pages/common/login/resigster'
			});
		},
		async Imlogin(Account) {
			var UserSig = await this.Microi.ApiEngine.Run('get_Im_UserId', {
				Account: Account
			});
			UserSig = UserSig.Data;
			TUILogin.login({
				SDKAppID: 1600084585,
				userID: Account,
				userSig: UserSig,
				useUploadPlugin: true,
				useProfanityFilterPlugin: false,
				framework: `vue2` // 当前开发使用框架 vue2 / vue3
			}).then(() => {
				console.log('登录成功');
				// const conversationID = options.conversationID;
				// TUIConversationService.switchConversation(conversationID);
			});
		},
		resetPW() {
			uni.navigateTo({
				url: '/pages/common/login/fogetPassword'
			});
		},
		toPhoneLogin() {
			this.tab = 1;
			this.loginType = 1;
		},
		async login() {
			var self = this;
			if (this.xieyi != 1) {
				self.Microi.Tips('请先同意隐私协议~', false);
				return;
			}
			if (self.isDisabled) {
				self.Microi.Tips('请勿重复点击', false);
				return;
			}
			self.isDisabled = true;
			var Param = {
				Phone: self.Phone,
				Type: self.loginType,
				TenantId: self.Microi.TenantId
			};

			// 1:手机号短信登录 0:账号密码
			if (!self.Phone || self.Phone.length != 11 || !/^1[3-9]\d{9}$/.test(self.Phone)) {
				self.Microi.Tips('请检查账号', false);
				self.isDisabled = false;
				return;
			}
			if (self.loginType == 0) {
				if (!self.password) {
					self.Microi.Tips('密码不得为空', false);
					self.isDisabled = false;
					return;
				}
				Param.password = self.password;
			} else {
				if (!self.code) {
					self.Microi.Tips('请检查验证码', false);
					self.isDisabled = false;
					return;
				}
				Param.code = self.code;
			}
			var res = await self.Microi.ApiEngine.Run('user_login', Param);
			if (res.Code != 1) {
				self.Microi.Tips(res.Msg, false);
				self.isDisabled = false;
				return;
			}
			self.Microi.Tips('登录成功~');
			var data = res.Data;
			if (uni.getStorageSync('myAccountList')) {
				var myAccountList = uni.getStorageSync('myAccountList');

				// 检查myAccountList是否超过10个元素
				if (myAccountList.length >= 10) {
					myAccountList.shift(); // 删除第一个元素
				}

				// 查找当前用户ID是否已经存在于myAccountList中
				var index = myAccountList.findIndex((val) => val === data.CurrentUser.Id);
				if (index === -1) {
					myAccountList.push(data.CurrentUser.Id); // 如果不存在，则插入新的用户ID
				} else {
					// 如果已经存在，可以考虑更新LastSwitchedAt时间戳或进行其他操作
					// 这里假设不需要进一步操作，直接跳过
				}

				// 更新存储
				uni.setStorageSync('myAccountList', myAccountList);
			} else {
				var myAccountList = [data.CurrentUser.Id];
				uni.setStorageSync('myAccountList', myAccountList);
			}
			self.Microi.SetCurrentUser(data.CurrentUser);
			self.Microi.SetToken(data.Token);
			self.isDisabled = false;
			self.Imlogin(data.CurrentUser.Account);
			setTimeout(function () {
				uni.reLaunch({
					url: '/pages/tabbar/find/find'
				});
			}, 500);
		},
		async getCode(Id) {
			var self = this;
			var access_token = await this.Microi.ApiEngine.Run('get_access_token');
			await wx.login({
				success(res) {
					uni.request({
						url: `https://api.weixin.qq.com/sns/jscode2session`, //仅为示例，并非真实接口地址。
						data: {
							appid: 'wxf01d36d5cb9527c0',
							secret: '75567caa0e3742536b95353b6797e348',
							js_code: res.code,
							grant_type: 'authorization_code'
						},
						success: (res) => {
							console.log('res1', res);
							var unionid = res.data.unionid;
							uni.request({
								url: `https://api.weixin.qq.com/cgi-bin/user/get?access_token=${access_token}&lang=zh_CN`,
								success(res) {
									console.log('res', res.data.data.openid);
									var openIdList = res.data.data.openid;
									if (openIdList.length > 0) {
										var flag = true;
										var i = 0;
										while (flag) {
											uni.request({
												url: `https://api.weixin.qq.com/cgi-bin/user/info?access_token=${access_token}&openid=${openIdList[i]}&lang=zh_CN`,
												success: (res) => {
													if (res.data.unionid == unionid) {
														// self.WxOpenId = res.data.openid
														self.Microi.FormEngine.UptFormData({
															FormEngineKey: 'sys_user',
															Id: Id,
															WxOpenId: res.data.openid
														});
														console.log(res.data.unionid, 'success1', res.data.openid);
														flag = false;
													}
												}
											});
											if (i == openIdList.length - 1) {
												flag = false;
											}
											i++;
										}
									}
								}
							});
						}
					});
				}
			});
		},
		wechatLogin() {
			var self = this;
			if (this.xieyi != 1) {
				self.Microi.Tips('请先同意隐私协议~', false);
				return;
			}
			uni.login({
				provider: 'weixin',
				onlyAuthorize: true, // 微信登录仅请求授权认证
				async success(res) {
					const { code } = res;
					var loginResult = await self.Microi.ApiEngine.Run('app_login', {
						code: code,
						TenantId: self.Microi.TenantId,
						ShangjiID: uni.getStorageSync('ShangjiID')
					});
					if (loginResult.Code && loginResult.Code == 2) {
						uni.navigateTo({
							url: '/pages/common/login/phoneVerify?AppOpenId=' + loginResult.Data.userAppOpenId + '&WxUnionId=' + loginResult.Data.unionid
						});
					} else if (loginResult.Code && loginResult.Code == 500) {
						console.log(loginResult);
						self.Microi.Tips('登录失败', false);
						return;
					} else {
						console.log(loginResult, 'loginResult');
						var data = loginResult.Data;
						if (uni.getStorageSync('myAccountList')) {
							var myAccountList = uni.getStorageSync('myAccountList');

							// 检查myAccountList是否超过10个元素
							if (myAccountList.length >= 10) {
								myAccountList.shift(); // 删除第一个元素
							}

							// 查找当前用户ID是否已经存在于myAccountList中
							var index = myAccountList.findIndex((val) => val === data.CurrentUser.Id);
							if (index === -1) {
								myAccountList.push(data.CurrentUser.Id); // 如果不存在，则插入新的用户ID
							} else {
								// 如果已经存在，可以考虑更新LastSwitchedAt时间戳或进行其他操作
								// 这里假设不需要进一步操作，直接跳过
							}

							// 更新存储
							uni.setStorageSync('myAccountList', myAccountList);
						} else {
							var myAccountList = [data.CurrentUser.Id];
							uni.setStorageSync('myAccountList', myAccountList);
						}
						self.Microi.SetCurrentUser(data.CurrentUser);
						self.Microi.SetToken(data.Token);
						self.Imlogin(data.CurrentUser.Account);
						if (data.DataAppend && data.DataAppend.Type == 'zhuce') {
							uni.reLaunch({
								url: '/pages/common/infoEdit/infoedit'
							});
						} else {
							self.Microi.Tips('登录成功~');
							// var data = res.data.Data;
							// self.Microi.SetCurrentUser(data.CurrentUser);
							// self.Microi.SetToken(data.Token);
							let pages = getCurrentPages();
							let currentPage = pages[pages.length - 2];

							setTimeout(function () {
								uni.reLaunch({
									url: currentPage.$page.fullPath
								});
							}, 500);
						}
					}
				}
			});
			// uni.login({
			// 	provider: 'weixin',
			// 	onlyAuthorize: true, // 微信登录仅请求授权认证
			// 	success: function (event) {
			// 		const { code } = event;
			// 		//客户端成功获取授权临时票据（code）,向业务服务器发起登录请求。
			// 		console.log('code', code);
			// 	},
			// 	fail: function (err) {
			// 		// 登录授权失败
			// 		// err.code是错误码
			// 	}
			// });
		},
		getPhoneNumber(event) {
			var self = this;
			if (this.xieyi != 1) {
				self.Microi.Tips('请先同意隐私协议~', false);
				return;
			}

			if (event.detail.errMsg !== 'getPhoneNumber:ok') {
				console.log(event, 'faill');
				self.Microi.Tips('获取失败', false);
				return;
			}
			uni.login({
				provider: 'weixin',
				success(res) {
					uni.request({
						url: self.Microi.ApiBase + '/ApiEngine/run',
						data: {
							ApiKey: 'miniprogram_login_reg_bind',
							OsClient: self.Microi.OsClient,
							Code: event.detail.code,
							LoginCode: res.code,
							TenantId: self.Microi.TenantId,
							ShangjiID: uni.getStorageSync('ShangjiID')
						},
						header: {
							'content-type': 'application/json',
							Authorization: self.tui.GetToken(),
							OsClient: self.Microi.OsClient
						},
						method: 'POST', //'GET','POST'
						dataType: 'json',
						success: (res) => {
							console.log(res, 'res--------');
							var data = res.data.Data;
							if (uni.getStorageSync('myAccountList')) {
								var myAccountList = uni.getStorageSync('myAccountList');

								// 检查myAccountList是否超过10个元素
								if (myAccountList.length >= 10) {
									myAccountList.shift(); // 删除第一个元素
								}

								// 查找当前用户ID是否已经存在于myAccountList中
								var index = myAccountList.findIndex((val) => val === data.CurrentUser.Id);
								if (index === -1) {
									myAccountList.push(data.CurrentUser.Id); // 如果不存在，则插入新的用户ID
								} else {
									// 如果已经存在，可以考虑更新LastSwitchedAt时间戳或进行其他操作
									// 这里假设不需要进一步操作，直接跳过
								}

								// 更新存储
								uni.setStorageSync('myAccountList', myAccountList);
							} else {
								var myAccountList = [data.CurrentUser.Id];
								uni.setStorageSync('myAccountList', myAccountList);
							}
							self.Microi.SetCurrentUser(data.CurrentUser);
							self.Microi.SetToken(data.Token);
							self.Imlogin(data.CurrentUser.Account);
							self.Microi.Tips('登录成功~');
							// var data = res.data.Data;
							// self.Microi.SetCurrentUser(data.CurrentUser);
							// self.Microi.SetToken(data.Token);
							let pages = getCurrentPages();
							let currentPage = pages[pages.length - 2];

							setTimeout(function () {
								uni.reLaunch({
									url: currentPage.$page.fullPath
								});
							}, 500);

							// if (res.data.DataAppend && res.data.DataAppend.Type && res.data.DataAppend.Type == 'zhuce') {
							// 	uni.reLaunch({
							// 		url: '/pages/common/infoEdit/infoedit'
							// 	});
							// } else {
							// 	self.Microi.Tips('登录成功~');
							// 	// var data = res.data.Data;
							// 	// self.Microi.SetCurrentUser(data.CurrentUser);
							// 	// self.Microi.SetToken(data.Token);
							// 	let pages = getCurrentPages();
							// 	let currentPage = pages[pages.length - 2];

							// 	setTimeout(function () {
							// 		uni.reLaunch({
							// 			url: currentPage.$page.fullPath
							// 		});
							// 	}, 500);
							// }
						},
						fail: (res) => {
							clearTimeout(tui.delayed);
							tui.delayed = null;
							self.Microi.Tips('网络不给力，请稍后再试~');
							reject(res);
						}
					});
				},
				fail(err) {
					self.Microi.Tips('登录失败~');
				}
			});
		},
		radioChange: function (e) {
			console.log(e, 'e');
			this.xieyi = e.detail.value;
		}
	}
};
</script>

<style>
.container {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 16rpx;
	flex-direction: column;
}
.logo-box {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;

	font-family: Inter, Inter;
	font-weight: bold;

	color: #212121;
	line-height: 56rpx;
	text-align: center;
	font-style: normal;
	text-transform: none;
	margin-top: 20rpx;
}
.login-BT {
	font-weight: 800;
	font-size: 56rpx;
	color: #212121;
	line-height: 66rpx;
	text-align: center;
	font-style: normal;
	text-transform: none;
	margin-bottom: 16rpx;
}
.logo-title {
	width: 190rpx;
	height: 116rpx;
	font-weight: 500;
	font-size: 32rpx;
	color: #212121;
	line-height: 58rpx;
	text-align: center;
	font-style: normal;
	text-transform: none;
	margin-bottom: 20rpx;
}
.logo-img {
	width: 210rpx;
	height: 210rpx;
	border-radius: 16rpx 16rpx 16rpx 16rpx;
}
.btn-container {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	gap: 64rpx;
	margin-top: 244rpx;
}
.btn-box {
	width: 440rpx;
	height: 92rpx;
	background: #fb353b;
	border-radius: 130rpx 130rpx 130rpx 130rpx;
	text-align: center;
	line-height: 92rpx;

	font-weight: bold;
	font-size: 32rpx;
	color: #ffffff;
	text-align: center;
	font-style: normal;
	text-transform: none;
}
.login-function {
	margin: 44rpx;
	margin-bottom: 0;
}
.login-title {
	display: flex;
	align-items: center;
	justify-content: space-between;

	font-weight: bold;
	font-size: 28rpx;
	color: #666666;
	line-height: 33rpx;
	text-align: center;
	font-style: normal;
	text-transform: none;
}
.login-title .line {
	width: 188rpx;
	height: 0rpx;
	background: #666666;
	border-radius: 0rpx 0rpx 0rpx 0rpx;
	border: 2rpx solid #666666;
}
.login-btn-container {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 190rpx;
	margin-top: 24rpx;
}
.login-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;

	font-weight: 500;
	font-size: 24rpx;
	color: #212121;
	line-height: 28rpx;
	text-align: center;
	font-style: normal;
	text-transform: none;
	margin-top: 24rpx;
}
.login-btn image {
	width: 88rpx;
	height: 88rpx;
	border-radius: 50%;
	margin-bottom: 20rpx;
}
.yinsi-box {
	margin-top: 72rpx;
	display: flex;
	align-items: center;
	justify-content: center;

	font-weight: 400;
	font-size: 24rpx;
	color: #666666;
	line-height: 28rpx;
	text-align: center;
	font-style: normal;
	text-transform: none;
}
.button {
	margin: 0;
	padding: 0;
	line-height: 0;
	background: none;
}
.xieyi-info {
	color: #fb353b;
}
.input-container {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	gap: 40rpx;
}
.input-box {
	width: 664rpx;
	height: 92rpx;
	background: #ffffff;
	box-shadow: 0rpx 0rpx 20rpx 0rpx rgba(10, 102, 194, 0.2);
	border-radius: 120rpx 120rpx 120rpx 120rpx;
	opacity: 0.6;
	padding: 20rpx;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: flex-start;
}
.input-box image {
	width: 44rpx;
	height: 44rpx;
	margin-right: 18rpx;
}
.input-title {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	border-right: 2rpx solid #eeeeee;
	padding-right: 20rpx;

	font-weight: 500;
	font-size: 28rpx;
	color: #999999;
	line-height: 33rpx;
	font-style: normal;
	text-transform: none;
	text-align: left;
	margin-right: 20rpx;
}
input {
	text-align: left;
}
.input-title image {
	width: 44rpx;
	height: 44rpx;
}
.input-holder {
	font-weight: 500;
	font-size: 28rpx;
	color: #999999;
	line-height: 33rpx;
	text-align: left;
	font-style: normal;
	text-transform: none;
}
.get_SMCode {
	width: 226rpx;
	height: 70rpx;
	background: #e9f2fa;
	border-radius: 130rpx 130rpx 130rpx 130rpx;
	line-height: 70rpx;
	text-align: center;

	font-weight: bold;
	font-size: 28rpx;
	color: #fb353b;
	text-align: center;
	font-style: normal;
	text-transform: none;
}
.login-btns {
	width: 440rpx;
	height: 92rpx;
	background: #fb353b;
	border-radius: 130rpx 130rpx 130rpx 130rpx;

	font-weight: bold;
	font-size: 32rpx;
	color: #ffffff;
	line-height: 92rpx;
	text-align: center;
	font-style: normal;
	text-transform: none;

	margin: auto;
	margin-top: 60rpx;
}
.login-tips {
	font-weight: 400;
	font-size: 28rpx;
	color: #fb353b;
	line-height: 33rpx;
	text-align: center;
	font-style: normal;
	text-transform: none;
	margin-top: 48rpx;
}
.foget-word {
	font-size: 25rpx;
	color: #999;
	text-align: center;
	margin-top: 20rpx;
}
.captcha-box {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-right: 20rpx;
}
.captcha-image {
	width: 200rpx !important;
	height: 60rpx !important;
	border-radius: 8rpx !important;
	margin-left: 20rpx !important;
}
</style>
